<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			var arr=["java","数据库","C语言","C++","图形"];
		/*截取元素返回新数组*/
			var result=arr.slice(0,2);/*2是结束索引*/
			console.log(result);
		/*删除原数组元素返回删除元素*/
			arr.splice(1,2);/*2是删除数量*/
			console.log(arr);
		/*去除重复数字*/
			var arr1=[1,2,1,3,2,3];
			for(var i=0;i<arr1.length;i++){
				for(var j=i+1;j<arr1.length;j++){
					if(arr1[i]==arr1[j]){
						arr1.splice(j,1);
						j--;/*删除后，后面的元素会自动补上来，导致补上来的数没有比较，所以要加j--*/
					}
				}
			}
			console.log(arr1);
		/*连接数组*/
			result=arr.concat(arr1,"hello");
			console.log(result);
		/*将数组转换为字符串*/
			result=arr.join("@");
			console.log(result);
			console.log(typeof(result));
		/*反转数组*/
			arr.reverse();
			console.log(arr);
		/*数组排序*/
			var arr3=["b","a","d","c"];
			arr3.sort();
			console.log(arr3);
		/*数字排序出错*/
			var arr4=[2,11,6,9];
			arr4.sort();
			console.log(arr4);
		/*使用回调函数*/
			arr4.sort(function(a,b){
				/*第一种方法*/
				if(a>b){
					return 1;/*返回大于0数字，交换ab*/
				}else if(a<b){
					return -1;/*返回小于0数字，不交换*/
				}else{
					return 0;/*相等，不交换*/
				}
				/*第二种方法*/
				/*return a-b;*/
			});
			console.log(arr4);
		/*call和apply*/
			function fun(a){
				console.log(this);
				console.log(a);
			}
			var obj={};
			fun.call(obj,2);
			fun.apply(obj,[3]);
		</script>
	</head>
	<body>
	</body>
</html>
